#ifndef CONSTANTS_HOLD_ITEM_EFFECTS_H
#define CONSTANTS_HOLD_ITEM_EFFECTS_H

#define HOLD_EFFECT_NONE                                 0
#define HOLD_EFFECT_HP_RESTORE                           1
#define HOLD_EFFECT_GIRATINA_BOOST                       2
#define HOLD_EFFECT_DIALGA_BOOST                         3
#define HOLD_EFFECT_PALKIA_BOOST                         4
#define HOLD_EFFECT_PRZ_RESTORE                          5
#define HOLD_EFFECT_SLP_RESTORE                          6
#define HOLD_EFFECT_PSN_RESTORE                          7
#define HOLD_EFFECT_BRN_RESTORE                          8
#define HOLD_EFFECT_FRZ_RESTORE                          9
#define HOLD_EFFECT_PP_RESTORE                          10
#define HOLD_EFFECT_CONFUSE_RESTORE                     11
#define HOLD_EFFECT_STATUS_RESTORE                      12
#define HOLD_EFFECT_HP_PCT_RESTORE                      13
#define HOLD_EFFECT_HP_RESTORE_SPICY                    14
#define HOLD_EFFECT_HP_RESTORE_DRY                      15
#define HOLD_EFFECT_HP_RESTORE_SWEET                    16
#define HOLD_EFFECT_HP_RESTORE_BITTER                   17
#define HOLD_EFFECT_HP_RESTORE_SOUR                     18
#define HOLD_EFFECT_WEAKEN_SE_FIRE                      19
#define HOLD_EFFECT_WEAKEN_SE_WATER                     20
#define HOLD_EFFECT_WEAKEN_SE_ELECTRIC                  21
#define HOLD_EFFECT_WEAKEN_SE_GRASS                     22
#define HOLD_EFFECT_WEAKEN_SE_ICE                       23
#define HOLD_EFFECT_WEAKEN_SE_FIGHT                     24
#define HOLD_EFFECT_WEAKEN_SE_POISON                    25
#define HOLD_EFFECT_WEAKEN_SE_GROUND                    26
#define HOLD_EFFECT_WEAKEN_SE_FLYING                    27
#define HOLD_EFFECT_WEAKEN_SE_PSYCHIC                   28
#define HOLD_EFFECT_WEAKEN_SE_BUG                       29
#define HOLD_EFFECT_WEAKEN_SE_ROCK                      30
#define HOLD_EFFECT_WEAKEN_SE_GHOST                     31
#define HOLD_EFFECT_WEAKEN_SE_DRAGON                    32
#define HOLD_EFFECT_WEAKEN_SE_DARK                      33
#define HOLD_EFFECT_WEAKEN_SE_STEEL                     34
#define HOLD_EFFECT_WEAKEN_NORMAL                       35
#define HOLD_EFFECT_PINCH_ATK_UP                        36
#define HOLD_EFFECT_PINCH_DEF_UP                        37
#define HOLD_EFFECT_PINCH_SPEED_UP                      38
#define HOLD_EFFECT_PINCH_SPATK_UP                      39
#define HOLD_EFFECT_PINCH_SPDEF_UP                      40
#define HOLD_EFFECT_PINCH_CRITRATE_UP                   41
#define HOLD_EFFECT_PINCH_RANDOM_UP                     42
#define HOLD_EFFECT_HP_RESTORE_SE                       43
#define HOLD_EFFECT_PINCH_ACC_UP                        44
#define HOLD_EFFECT_PINCH_PRIORITY                      45
#define HOLD_EFFECT_RECOIL_PHYSICAL                     46
#define HOLD_EFFECT_RECOIL_SPECIAL                      47
#define HOLD_EFFECT_ACC_REDUCE                          48
#define HOLD_EFFECT_STATDOWN_RESTORE                    49
#define HOLD_EFFECT_EVS_UP_SPEED_DOWN                   50
#define HOLD_EFFECT_EXP_SHARE                           51
#define HOLD_EFFECT_SOMETIMES_PRIORITY                  52
#define HOLD_EFFECT_FRIENDSHIP_UP                       53
#define HOLD_EFFECT_HEAL_INFATUATION                    54
#define HOLD_EFFECT_CHOICE_ATK                          55
#define HOLD_EFFECT_SOMETIMES_FLINCH                    56
#define HOLD_EFFECT_STRENGTHEN_BUG                      57
#define HOLD_EFFECT_MONEY_UP                            58
#define HOLD_EFFECT_ENCOUNTERS_DOWN                     59
#define HOLD_EFFECT_LATI_SPECIAL                        60
#define HOLD_EFFECT_CLAMPERL_SPATK                      61
#define HOLD_EFFECT_CLAMPERL_SPDEF                      62
#define HOLD_EFFECT_FLEE                                63
#define HOLD_EFFECT_NO_EVOLVE                           64
#define HOLD_EFFECT_MAYBE_ENDURE                        65
#define HOLD_EFFECT_EXP_UP                              66
#define HOLD_EFFECT_CRITRATE_UP                         67
#define HOLD_EFFECT_STRENGTHEN_STEEL                    68
#define HOLD_EFFECT_HP_RESTORE_GRADUAL                  69
#define HOLD_EFFECT_EVOLVE_SEADRA                       70
#define HOLD_EFFECT_PIKA_SPATK_UP                       71
#define HOLD_EFFECT_STRENGTHEN_GROUND                   72
#define HOLD_EFFECT_STRENGTHEN_ROCK                     73
#define HOLD_EFFECT_STRENGTHEN_GRASS                    74
#define HOLD_EFFECT_STRENGTHEN_DARK                     75
#define HOLD_EFFECT_STRENGTHEN_FIGHT                    76
#define HOLD_EFFECT_STRENGTHEN_ELECTRIC                 77
#define HOLD_EFFECT_STRENGTHEN_WATER                    78
#define HOLD_EFFECT_STRENGTHEN_FLYING                   79
#define HOLD_EFFECT_STRENGTHEN_POISON                   80
#define HOLD_EFFECT_STRENGTHEN_ICE                      81
#define HOLD_EFFECT_STRENGTHEN_GHOST                    82
#define HOLD_EFFECT_STRENGTHEN_PSYCHIC                  83
#define HOLD_EFFECT_STRENGTHEN_FIRE                     84
#define HOLD_EFFECT_STRENGTHEN_DRAGON                   85
#define HOLD_EFFECT_STRENGTHEN_NORMAL                   86
#define HOLD_EFFECT_EVOLVE_PORYGON                      87
#define HOLD_EFFECT_HP_RESTORE_ON_DMG                   88
#define HOLD_EFFECT_CHANSEY_CRITRATE_UP                 89
#define HOLD_EFFECT_DITTO_DEF_UP                        90
#define HOLD_EFFECT_CUBONE_ATK_UP                       91
#define HOLD_EFFECT_FARFETCHD_CRITRATE_UP               92
#define HOLD_EFFECT_ACCURACY_UP                         93
#define HOLD_EFFECT_POWER_UP_PHYS                       94
#define HOLD_EFFECT_POWER_UP_SPEC                       95
#define HOLD_EFFECT_POWER_UP_SE                         96
#define HOLD_EFFECT_EXTEND_SCREENS                      97
#define HOLD_EFFECT_HP_DRAIN_ON_ATK                     98
#define HOLD_EFFECT_CHARGE_SKIP                         99
#define HOLD_EFFECT_PSN_USER                           100
#define HOLD_EFFECT_BRN_USER                           101
#define HOLD_EFFECT_DITTO_SPEED_UP                     102
#define HOLD_EFFECT_ENDURE                             103
#define HOLD_EFFECT_ACCURACY_UP_SLOWER                 104
#define HOLD_EFFECT_BOOST_REPEATED                     105
#define HOLD_EFFECT_SPEED_DOWN_GROUNDED                106
#define HOLD_EFFECT_PRIORITY_DOWN                      107
#define HOLD_EFFECT_RECIPROCATE_INFAT                  108
#define HOLD_EFFECT_HP_RESTORE_PSN_TYPE                109
#define HOLD_EFFECT_EXTEND_HAIL                        110
#define HOLD_EFFECT_EXTEND_SANDSTORM                   111
#define HOLD_EFFECT_EXTEND_SUN                         112
#define HOLD_EFFECT_EXTEND_RAIN                        113
#define HOLD_EFFECT_EXTEND_TRAPPING                    114
#define HOLD_EFFECT_CHOICE_SPEED                       115
#define HOLD_EFFECT_DMG_USER_CONTACT_XFR               116
#define HOLD_EFFECT_LVLUP_ATK_EV_UP                    117
#define HOLD_EFFECT_LVLUP_DEF_EV_UP                    118
#define HOLD_EFFECT_LVLUP_SPATK_EV_UP                  119
#define HOLD_EFFECT_LVLUP_SPDEF_EV_UP                  120
#define HOLD_EFFECT_LVLUP_SPEED_EV_UP                  121
#define HOLD_EFFECT_LVLUP_HP_EV_UP                     122
#define HOLD_EFFECT_SWITCH                             123
#define HOLD_EFFECT_LEECH_BOOST                        124
#define HOLD_EFFECT_CHOICE_SPATK                       125
#define HOLD_EFFECT_ARCEUS_FIRE                        126
#define HOLD_EFFECT_ARCEUS_WATER                       127
#define HOLD_EFFECT_ARCEUS_ELECTRIC                    128
#define HOLD_EFFECT_ARCEUS_GRASS                       129
#define HOLD_EFFECT_ARCEUS_ICE                         130
#define HOLD_EFFECT_ARCEUS_FIGHTING                    131
#define HOLD_EFFECT_ARCEUS_POISON                      132
#define HOLD_EFFECT_ARCEUS_GROUND                      133
#define HOLD_EFFECT_ARCEUS_FLYING                      134
#define HOLD_EFFECT_ARCEUS_PSYCHIC                     135
#define HOLD_EFFECT_ARCEUS_BUG                         136
#define HOLD_EFFECT_ARCEUS_ROCK                        137
#define HOLD_EFFECT_ARCEUS_GHOST                       138
#define HOLD_EFFECT_ARCEUS_DRAGON                      139
#define HOLD_EFFECT_ARCEUS_DARK                        140
#define HOLD_EFFECT_ARCEUS_STEEL                       141
#define HOLD_EFFECT_EVOLVE_RHYDON                      142
#define HOLD_EFFECT_EVOLVE_ELECTABUZZ                  143
#define HOLD_EFFECT_EVOLVE_MAGMAR                      144
#define HOLD_EFFECT_EVOLVE_PORYGON2                    145
#define HOLD_EFFECT_EVOLVE_DUSCLOPS                    146

// new effects

#define HOLD_EFFECT_BURN_DRIVE                         147
#define HOLD_EFFECT_CHILL_DRIVE                        148
#define HOLD_EFFECT_DOUSE_DRIVE                        149
#define HOLD_EFFECT_SHOCK_DRIVE                        150
#define HOLD_EFFECT_EVOLVE_FEEBAS                      151
#define HOLD_EFFECT_EVIOLITE                           152
#define HOLD_EFFECT_HALVE_WEIGHT                       153
#define HOLD_EFFECT_DAMAGE_ON_CONTACT                  154
#define HOLD_EFFECT_UNGROUND_DESTROYED_ON_HIT          155
#define HOLD_EFFECT_FORCE_SWITCH_ON_DAMAGE             156
#define HOLD_EFFECT_LOSE_TYPE_IMMUNITIES               157
#define HOLD_EFFECT_TRAPPING_DAMAGE_UP                 158
#define HOLD_EFFECT_BOOST_SPECIAL_ATTACK_ON_WATER_HIT  159
#define HOLD_EFFECT_BOOST_ATK_ON_ELECTRIC_HIT          160
#define HOLD_EFFECT_SWITCH_OUT_WHEN_HIT                161
#define HOLD_EFFECT_BOOST_ATK_AND_SPATK_ON_SE          162
#define HOLD_EFFECT_SPDEF_BOOST_NO_STATUS_MOVES        163
#define HOLD_EFFECT_ARCEUS_FAIRY                       164
#define HOLD_EFFECT_EVOLVE_SWIRLIX                     165
#define HOLD_EFFECT_EVOLVE_SPRITZEE                    166
#define HOLD_EFFECT_BOOST_SPECIAL_DEFENSE_ON_WATER_HIT 167
#define HOLD_EFFECT_BOOST_ATK_ON_ICE_HIT               168
#define HOLD_EFFECT_SPORE_POWDER_IMMUNITY              169
#define HOLD_EFFECT_WEAKEN_SE_FAIRY                    170
#define HOLD_EFFECT_BOOST_DEF_ON_PHYSICAL_HIT          171
#define HOLD_EFFECT_BOOST_SPDEF_ON_SPECIAL_HIT         172
#define HOLD_EFFECT_INTIMIDATE_BOOST_SPEED             173
#define HOLD_EFFECT_EXTEND_TERRAIN                     174
#define HOLD_EFFECT_PREVENT_CONTACT_EFFECTS            175
#define HOLD_EFFECT_BOOST_DEF_ON_ELECRIC_TERRAIN       176
#define HOLD_EFFECT_BOOST_SPDEF_ON_PSYCHIC_TERRAIN     177
#define HOLD_EFFECT_BOOST_SPDEF_ON_MISTY_TERRAIN       178
#define HOLD_EFFECT_BOOST_DEF_ON_GRASSY_TERRAIN        179
#define HOLD_EFFECT_FIGHTING_MEMORY                    180
#define HOLD_EFFECT_FLYING_MEMORY                      181
#define HOLD_EFFECT_POISON_MEMORY                      182
#define HOLD_EFFECT_GROUND_MEMORY                      183
#define HOLD_EFFECT_ROCK_MEMORY                        184
#define HOLD_EFFECT_BUG_MEMORY                         185
#define HOLD_EFFECT_GHOST_MEMORY                       186
#define HOLD_EFFECT_STEEL_MEMORY                       187
#define HOLD_EFFECT_FIRE_MEMORY                        188
#define HOLD_EFFECT_WATER_MEMORY                       189
#define HOLD_EFFECT_GRASS_MEMORY                       190
#define HOLD_EFFECT_ELECTRIC_MEMORY                    191
#define HOLD_EFFECT_PSYCHIC_MEMORY                     192
#define HOLD_EFFECT_ICE_MEMORY                         193
#define HOLD_EFFECT_DRAGON_MEMORY                      194
#define HOLD_EFFECT_DARK_MEMORY                        195
#define HOLD_EFFECT_FAIRY_MEMORY                       196
#define HOLD_EFFECT_TRANSFORM_ZACIAN                   197
#define HOLD_EFFECT_TRANSFORM_ZAMAZENTA                198
#define HOLD_EFFECT_BOOST_SPATK_ON_SOUND_MOVE          199
#define HOLD_EFFECT_SWITCH_OUT_ON_STAT_DROP            200
#define HOLD_EFFECT_IGNORE_ENTRY_HAZARDS               201
#define HOLD_EFFECT_BOOST_SPEED_ON_MISS                202
#define HOLD_EFFECT_DROP_SPEED_IN_TRICK_ROOM           203
#define HOLD_EFFECT_UNAFFECTED_BY_RAIN_OR_SUN          204
#define HOLD_EFFECT_DIALGA_BOOST_AND_TRANSFORM         205
#define HOLD_EFFECT_PALKIA_BOOST_AND_TRANSFORM         206
#define HOLD_EFFECT_GIRATINA_BOOST_AND_TRANSFORM       207
#define HOLD_EFFECT_ARCEUS_NORMAL                      208
#define HOLD_EFFECT_ACTIVATE_PARADOX_ABILITIES         209
#define HOLD_EFFECT_PREVENT_ABILITY_CHANGES            210
#define HOLD_EFFECT_PREVENT_STAT_DROPS                 211
#define HOLD_EFFECT_COPY_STAT_INCREASE                 212
#define HOLD_EFFECT_INCREASE_PUNCHING_MOVE_DMG         213
#define HOLD_EFFECT_PREVENT_SECONDARY_EFFECTS          214
#define HOLD_EFFECT_INCREASE_MULTI_STRIKE_MINIMUM      215
#define HOLD_EFFECT_STRENGTHEN_FAIRY                   216
#define HOLD_EFFECT_CORNERSTONE_MASK                   217
#define HOLD_EFFECT_WELLSPRING_MASK                    218
#define HOLD_EFFECT_HEARTHFLAME_MASK                   219

#endif
